package cn.px.dao.entity.sb;

import cn.px.common.bean.DataScope;
import lombok.Data;
import lombok.experimental.Accessors;

import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * @Description 设备加油申请实体类
 * @author 品讯科技
 * @date 2024-08
 * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
 */
@Data
@Accessors(chain = true)
@Table(name = "t_sb_oil")
public class SbOil implements Serializable {

    /**
     * 主键
     */
    @Id
    private String id;
    /**
     * 设备ID
     */
    private String sbId;

    /**
     * 设备名称
     */
    private String sbName;

    /**
     * 设备编号
     */
    private String sbNo;

    /**
     * 卡片编号
     */
    private String sbCardNo;

    /**
     * 仓库ID
     */
    private String storeId;

    /**
     * 仓库备件关联ID
     */
    private String spareStoreId;

    /**
     * 工程项目ID
     */
    private String projectQuantityId;

    /**
     * 用途
     */
    private String reason;

    /**
     * 申请人
     */
    private String userId;
    /**
     * 申请人名称
     */
    private String userName;

    /**
     * 申请人所在部门ID
     */
    private String userDeptId;

    /**
     * 申请人所在部门的code
     */
    private String userDeptCode;

    /**
     * 审批类型：1.系统审批，2.人工审批
     */
    private Integer auditType;

    /**
     * 人工审批人
     */
    private String auditUserId;

    /**
     * 人工审批人
     */
    private String auditUserName;

    /**
     * 处理人
     */
    private String storeUserId;
    /**
     * 处理人名称
     */
    private String storeUserName;
    /**
     * 状态：1.申请中，2.已处理,3.撤销
     */
    private Integer status;
    /**
     * 申请油量
     */
    private BigDecimal applyOil;
    /**
     * 真实油量
     */
    private BigDecimal realOil;
    /**
     * 申请说明
     */
    private String applyRemark;
    /**
     * 执行说明
     */
    private String handleRemark;
    /**
     * 说明
     */
    private String remark;
    /**
     * 创建人
     */
    private String createdUserId;
    /**
     * 创建人名称
     */
    private String createdUserName;
    /**
     * 更新人
     */
    private String updateUserId;
    /**
     * 更新人名称
     */
    private String updateUserName;
    /**
     * 创建日期
     */
    private LocalDateTime createdTime;
    /**
     * 更新日期
     */
    private LocalDateTime updateTime;

    /**
     * 数据权限
     */
    @Transient
    private DataScope dataScope;

}
